With the advent of interactive programming services—e.g., video on demand (VOD), electronic program guides (EPGs), and the like—the complexity associated with processing and storing programming content so that it can be effectively accessed for transmission has increased. For example, a VOD service provides a large number of users with the ability to access a specific program from among a wide array of programming content. In addition, some VOD services allow users to manipulate such content by, e.g., fast-forwarding, rewinding, etc. such programs. In the course of making such VOD programming and options available to users, the content must be made available for access and viewing by a user at any given time. In addition, accommodations must be made such that multiple users—and at times large numbers of users—can view the same programming content at the same time even though the start time of such program may vary from user to user.
In addition, requests are often received to view a given program in different presentations. For example, a user at a set-top terminal may request that a previously broadcast episode of a program be accessed and played. Another (or the same) user may issue a rewind command concerning the same program, whereas another user may issue a 3-times normal play speed fast-forward command.
Accordingly, programming content needs to be stored and processed in a manner such that a seamless viewing experience from a user's vantage is created (e.g., minimal delays in transmission of content, smooth transitions between content segments of the same or different programs, etc.)—regardless of the presentation selected by the user or the number of users accessing the same program.
Moreover, as interactive programming services have become more ubiquitous and the availability of such service continues to grow, it has and will continue to be more challenging for broadband service providers to store and maintain programming content in an effective manner such that administrators of such systems are capable of easily accessing and handling programming content data as desired.